/**
 * 步数相关接口
 */

import { post } from './request'
import type { 
  SpbUploadStepRequest, 
  SpbUploadStepResponse,
  SpbStepDecryptRequest, 
  SpbStepDecryptResponse 
} from './apifox/models'

/**
 * 上传每日步数
 * 上传用户每日的步数数据
 * 
 * @param data 请求参数，包含加密后的步数（uuid）
 * @returns 返回上传结果和可能的奖励信息
 */
export function uploadStep(data: SpbUploadStepRequest): Promise<SpbUploadStepResponse> {
  return post<SpbUploadStepResponse>('/upload_step', data, {
    showLoading: true,
    loadingText: '上传中...'
  })
}

/**
 * 解密微信步数
 * 解密微信加密的步数数据
 * 
 * @param data 请求参数，包含加密的步数数据
 * @returns 返回解密后的真实步数
 */
export function stepDecrypt(data: SpbStepDecryptRequest): Promise<SpbStepDecryptResponse> {
  return post<SpbStepDecryptResponse>('/step_decrypt', data, {
    showLoading: true,
    loadingText: '解密中...',
    disableRetry: true // 禁用重试，业务错误不应该重试
  })
}

